<!DOCTYPE html>
<html lang=zh-CN>
<head>
<meta charset=utf-8>
<title>PPP协议 点对点协议 配置安装 | Cweili Beta</title>
<meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">
<meta name=description content="PPP：点对点协议 （PPP：Point to Point Protocol） 　　点对点协议（PPP）为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议（OSI 模式中的第二层），替代了原来非标准的第二层协议，即 SLIP。除了 IP 以外 PPP 还可以携">
<meta property=og:type content=article>
<meta property=og:title content="PPP协议 点对点协议 配置安装">
<meta property=og:url content="http://cweili.gitcafe.com/point-to-point-protocol/">
<meta property=og:site_name content="Cweili Beta">
<meta property=og:description content="PPP：点对点协议 （PPP：Point to Point Protocol） 　　点对点协议（PPP）为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议（OSI 模式中的第二层），替代了原来非标准的第二层协议，即 SLIP。除了 IP 以外 PPP 还可以携">
<meta name=twitter:card content=summary>
<meta name=twitter:title content="PPP协议 点对点协议 配置安装">
<meta name=twitter:description content="PPP：点对点协议 （PPP：Point to Point Protocol） 　　点对点协议（PPP）为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议（OSI 模式中的第二层），替代了原来非标准的第二层协议，即 SLIP。除了 IP 以外 PPP 还可以携">
<link rel=alternative href=/atom.xml title="Cweili Beta" type=application/atom+xml>
<link rel=icon href=favicon.png>
<link rel=stylesheet href=//libs.baidu.com/bootstrap/3.2.0/css/bootstrap.min.css type=text/css>
<link rel=stylesheet href=../css/style.css type=text/css>
<!--[if lt IE 9]><script src="//cdn.staticfile.org/html5shiv/3.7/html5shiv.min.js" type="text/javascript"></script><![endif]-->
</head>
<body>
<div id=container>
<nav id=mobile-nav class=visible-xs>
<a href="/" class=mobile-nav-link>首页</a>
<ul class=category-list><li class=category-list-item><a class=category-list-link href=../category/学习笔记>学习笔记</a><span class=category-list-count>40</span></li><li class=category-list-item><a class=category-list-link href=../category/小生活>小生活</a><span class=category-list-count>27</span></li><li class=category-list-item><a class=category-list-link href=../category/杂物>杂物</a><span class=category-list-count>9</span></li></ul>
<a href="/tag/%E7%9B%B8%E5%86%8C/" class=mobile-nav-link>相册</a>
<a href="/about/" class=mobile-nav-link>关于</a>
<div class=clearfix></div>
</nav>
<div id=wrap>
<!--[if lt IE 9]><p class="browsehappy alert alert-danger">您正在使用一个<strong>过时</strong>的浏览器。请<a href="http://browsehappy.com/" target="_blank">更新您的浏览器</a>来达到更好的体验。</p><![endif]-->
<header id=header>
<div id=banner></div>
<div id=header-outer class=outer>
<div id=header-inner class=inner>
<nav class=main-nav>
<div id=main-nav-toggle class="nav-icon visible-xs"><i class="fa fa-bars"></i></div>
<a class="main-nav-link hidden-xs" href="/">首页</a>
</nav>
<nav id=category-nav class=hidden-xs>
<ul class=category-list><li class=category-list-item><a class=category-list-link href=../category/学习笔记>学习笔记</a><span class=category-list-count>40</span></li><li class=category-list-item><a class=category-list-link href=../category/小生活>小生活</a><span class=category-list-count>27</span></li><li class=category-list-item><a class=category-list-link href=../category/杂物>杂物</a><span class=category-list-count>9</span></li></ul>
</nav>
<nav class="main-nav hidden-xs">
<a class=main-nav-link href="/tag/%E7%9B%B8%E5%86%8C/">相册</a>
<a class=main-nav-link href="/about/">关于</a>
</nav>
<nav id=sub-nav>
<a id=nav-rss-link class="nav-icon pull-right hidden-xs" href=/atom.xml title="RSS 订阅"><i class="fa fa-rss"></i></a>
<div id=nav-search-btn class="nav-icon pull-right" title=搜索><i class="fa fa-search"></i></div>
</nav>
<div id=search-form-wrap>
<form action=http://www.baidu.com/baidu accept-charset=utf-8 class=search-form target=_blank>
<input type=search name=word class=search-form-input placeholder=搜索>
<input id=search-form-submit type=submit value=&nbsp; class=search-form-submit>
<input name=tn type=hidden value=bds>
<input name=cl type=hidden value=3>
<input name=ct type=hidden value=2097152>
<input type=hidden name=si value=cweili.gitcafe.com>
<label class=search-form-submit for=search-form-submit><i class="fa fa-search"></i></label>
</form>
</div>
</div>
<div id=header-title class=inner>
<h1 id=logo-wrap>
<a href="/" id=logo>Cweili Beta</a>
</h1>
<h2 id=subtitle-wrap>
<a href="/" id=subtitle>I&#39;m working on it</a>
</h2>
</div>
</div>
</header>
<div class=outer>
<section id=main class=col-sm-9><article id=post-point-to-point-protocol class="article article-type-post" itemscope itemprop=blogPost>
<div class=article-meta>
<a href="/point-to-point-protocol/" class=article-date>
<time datetime=2011-10-24T14:59:17.000Z itemprop=datePublished>2011-10-24</time>
</a>
<div class=article-category>
<a class=article-category-link href=../category/学习笔记>学习笔记</a>
</div>
</div>
<div class="article-inner jiathis_streak">
<header class=article-header>
<h2 class=article-title itemprop=name>
PPP协议 点对点协议 配置安装
</h2>
</header>
<div class=article-entry itemprop=articleBody>
<p><strong>PPP：点对点协议 </strong>（PPP：Point to Point Protocol） 　　点对点协议（PPP）为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议（OSI 模式中的第二层），替代了原来非标准的第二层协议，即 SLIP。除了 IP 以外 PPP 还可以携带其它协议，包括 DECnet 和 Novell 的 Internet 网包交换（IPX）。<a id=more></a></p>
<h3 id=PPP_主要由以下几部分组成><a name=6_2></a>PPP 主要由以下几部分组成</h3>
<p>封装：一种封装多协议数据报的方法。PPP 封装提供了不同网络层协议同时在同一链路传输的多路复用技术。PPP 封装精心设计，能保持对大多数常用硬件的兼容性，克服了 SLIP 不足之处的一种多用途、点到点协议，它提供的 WAN 数据链接封装服务类似于 LAN 所提供的 封闭服务。所以，PPP 不仅仅提供帧定界，而且提供协议标识和位级完整性检查服务。 　　链路控制协议：一种扩展链路控制协议，用于建立、配置、测试和管理数据链路连接。 　　网络控制协议：协商该链路上所传输的数据包格式与类型，建立、配置不同的网络层协议；　 　　配置：使用链路控制协议的简单和自制机制。该机制也应用于其它控制协议，例如：网络控制协议（NCP）。 　　为了建立点对点链路通信，PPP 链路的每一端，必须首先发送 LCP 包以便设定和测试数据链路。在链路建立，LCP 所需的可选功能被选定之后，PPP 必须发送 NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了，来自每个网络层协议的数据报就能在链路上发送了。 　　链路将保持通信设定不变，直到有 LCP 和 NCP 数据包关闭链路，或者是发生一些外部事件的时候（如，休止状态的定时器期满或者网络管理员干涉）。 　　应 用：假设同样是在 Windows 98，并且已经创建好“拨号连接”。那么可以通过下面的方法来设置 PPP 协议：首先，打开“拨号连接”属性，同样选择“服务器类型”选项卡；然后，选择默 认的“PPP：Internet，Windows NT Server，Windows 98”，在高级选项中可以设置该协议其它功能选项；最后，单击“确定”按钮即可。</p>
<h3 id="PPP 工作流程"><a name=6_3></a>PPP 工作流程</h3>
<p>当用户拨号接入 ISP 时，路由器的调制解调器对拨号做出确认，并建立一条物理连接（底层 up）。</p>
<p>PC 机向路由器发送一系列的 LCP 分组（封装成多个 PPP 帧）。 　　这些分组及其响应选择一些 PPP 参数，和进行网络层配置（此前如有 PAP 或 CHAP 验证先要通过验证），NCP 给新接入的 PC 机分配一个临时的 IP 地址，使 PC 机成为因特网上的一个主机。 　　通信完毕时，NCP 释放网络层连接，收回原来分配出去的 IP 地址。接着，LCP 释放数据链路层连接。最后释放的是物理层的连接。</p>
<h3 id="PPP 和 HDLC 之间最主要的区别"><a name=6_4></a>PPP 和 HDLC 之间最主要的区别</h3>
<p>PPP 是面向字节的，HDLC 是面向位的。 　　③PPP 在 GPS 应用领域代表着“精密单点定位(Precise Point Positioning)”，精密单点定位是利用国际 GPS 服务机构 IGS 提供的或自己计算的 GPS 精密星历和精密钟差文件，以无电离层影响的载波相位和 伪距组合观测值为观测资料，对测站的位置、接收机钟差、对流层天顶延迟以及组合后的相位模糊度等参数进行估计。用户通过一台含双频双码 GPS 接收机就可以 实现在数千平方公里乃至全球范围内的高精度定位。它的特点在于各站的解算相互独立，计算量远远小于一般的相对定位。</p>
<h3 id="PPP 的特点"><a name=6_5></a>PPP 的特点</h3>
<p>PPP 协议是一种点——点串行通信协议。PPP 具有处理错误检测、支持多个协议、允许在连接时刻协商 IP 地址、允许身份认证等功能，还有其他。PPP 提供了 3 类功能：成帧；链路控制协议 LCP；网络控制协议 NCP。PPP 是面向字符类型的协议。</p>
<p><strong>PPP 协议的帧格式</strong></p>
<table><br><tbody><br><tr><br><td>标志字段 </td><br><td> 地址字段 </td><br><td> 控制字段 </td><br><td> 协议 </td><br><td> 信息部 分 </td><br><td>FCS</td><br><td> 标志字段</td><br></tr><br></tbody><br></table>
<h3 id="PPP 应用范围"><a name=6_6></a>PPP 应用范围</h3>
<p>PPP 是一种多协议成帧机制，它适合于调制解调器、HDLC 位序列线路、SONET 和其它的物理层上使用。它支持错误检测、选项协商、头部压缩以及使用 HDLC 类型帧格式（可选）的可靠传输。 　　PPP 提供了三类功能： 　　1 成帧：他可以毫无歧义的分割出一帧的起始和结束。 　　2 链路控制：有一个称为 LCP 的链路控制协议，支持同步和异步线路，也支持面向字节的和面向位的编码方式，可用于启动路线、测试线路、协商参数、以及关闭线路。 　　3 网络控制：具有协商网络层选项的方法，并且协商方法与使用的网络层协议独立。</p>
<h3 id="PPP 的两种认证方式"><a name=6_7></a>PPP 的两种认证方式</h3>
<p>一种是 PAP，一种是 CHAP。相对来说 PAP 的认证方式安全性没有 CHAP 高。PAP 在传输 password 是明文的，而 CHAP 在传输过程中不传输 密码，取代密码的是 hash（哈希值）。PAP 认证是通过两次握手实现的，而 CHAP 则是通过 3 次握手实现的。PAP 认证是被叫提出连接请求，主叫响应。 而 CHAP 则是主叫发出请求，被叫回复一个数据包，这个包里面有主叫发送的随机的哈希值，主叫在数据库中确认无误后发送一个连接成功的数据包连接</p>
<h3 id=PPP_常见问题><a name=6_8></a>PPP 常见问题</h3>
<p><strong>1）什么是 LCP？</strong> 　　链路控制协议(LCP) LCP 建立点对点链路，是 PPP 中实际工作的部分。LCP 位于物理层的上方，负责建立、配置和测试数据链路连接。LCP 还负责协商和设置 WAN 数据链路上的控制选项，这些选项由 NCP 处理。 　　<strong>2）NCP 是什么？</strong>　　PPP 允许多个网络协议共用一个链路，网络控制协议 (NCP) 负责连接 PPP（第二层）和网络协议 (第三层)。对于所使用的每个网络层协议，PPP 都分别使用独立的 NCP 来连接。例如，IP 使用 IP 控制协议 (IPCP)，IPX 使用 Novell IPX 控制协议 (IPXCP)。</p>
<h3 id="PPP 配置方法"><a name=6_9></a>PPP 配置方法</h3>
<p>PPP 基本配置 <br>1， 启用 ppp<br>RouterTest#config terminal<br>Enter configuration commands, one per line. End with CNTL/Z.<br>RouterTest(config)#interface serial 0/0<br>RouterTest(config-if)#encapsulation ppp<br>RouterTest(config-if)#<br>2， 地址配置命令<br>RouterTest(config-if)#ip address 10.1.1.1 255.255.255.0<br>PAP 配置实例<br>Router(config)#hostname RouterA<br>RouterA(config)#RouterB password itsasecret<br>RouterA(config)#interface Async 0<br>RouterA(config-if)#encapsulation ppp<br>RouterA(config-if)#ip address 10.0.0.1 255.255.255.0<br>RouterA(config-if)#dialer-map ip 10.0.0.2 name RouterB 5551234<br>RouterA(config-if)#username RouterA password itsasecret2<br>Router(config)#hostname RouterB<br>RouterB (config)#RouterA password itsasecret<br>RouterB (config)#interface Async 0<br>RouterB (config-if)#encapsulation ppp<br>RouterB (config-if)#ip address 10.0.0.2 255.255.255.0<br>RouterB (config-if)#dialer-map ip 10.0.0.1 name RouterA 5551234<br>RouterB (config-if)#username RouterB password itsasecret2<br>CHAP 配置实例<br>Router(config)#hostname RouterA<br>RouterA(config)#RouterB password itsasecret<br>RouterA(config)#interface Async 0<br>RouterA(config-if)dialer in-band<br>RouterA(config-if)#encapsulation ppp<br>RouterA(config-if)#ppp authentication chap<br>RouterA(config-if)#ip address 10.0.0.1 255.255.255.0<br>RouterA(config-if)#dialer-map ip 10.0.0.2 name RouterB 5551234<br>RouterA(config-if)#username RouterA password itsasecret2<br>Router(config)#hostname RouterB<br>RouterB (config)#RouterA password itsasecret<br>RouterB (config)#interface Async 0<br>RouterB(config-if)dialer in-band<br>RouterB (config-if)#encapsulation ppp<br>RouterB (config-if)#ppp authentication chap<br>RouterB (config-if)#ip address 10.0.0.2 255.255.255.0<br>RouterB (config-if)#dialer-map ip 10.0.0.1 name RouterA 5551234<br>RouterB (config-if)#username RouterB password itsasecret2<br> 同时启用 CHAP 和 PAP<br>Router(config-if)#ppp authentication chap pap<br>配置 PPP 回拨 <br> 使用压缩 <br>cisco 支持的压缩方法：<br>Predictor: 先判断数据是否已经被压缩过。如果数据被压缩过，则立即将其发送出去，而不浪费时间对已经压缩过的数据进行压缩。<br>Stacker: 一种基于 Lempel-Ziv(LZ) 的压缩算法，对每种数据类型，只发送一次有关其在数据流中的位置。接收方根据这些信息重新组织数据流。<br>MPPC:MPPC 协议（RFC2118）让 cisco 路由器器能够与 microsoft 客户端交换压缩后的数据，它使用一种基于 LZ 的压缩算法 <br>TCP 报头压缩：也叫 Van Jacobson 压缩，只用于压缩 tcp 报头。<br> 配置压缩 <br>Router(config)#interface serial2<br>Router(config-if)#compress {predictor|stac|mppc}<br>Or<br>Router(config)#interface async<br>Router(config-if)#ip tcp header-compression<br>Or<br>Router(config)#interface async<br>Router(config-if)#ip tcp header-compression passive<br> 该命令告诉路由器，仅当从对方那里收到压缩后的报头后，才使用 tcp 报头压缩。<br>多链路 PPP<br>通过使用多链路 PPP, 可以将多条连接捆绑成一条虚拟连接。<br>Router(config-if)#ppp multilink<br>Router(config-if)#dialer load-threshold load [outbound | inbound | either]<br>命令 dialer load-threshol load 指定在什么情况下将更多的 B 信道加入到 MLP 链路束中。当所有 B 信道的总负载超过指定的阀值后，拨号接口（BRI 或 PRI）将信道加入到多链路束中。<br>同样，如果总负载低于阀值，将拆除 B 信道。<br>参数 load 是接口的平均负载，其取值为 1（没有负载）到 255（满载）。<br>参数 outbound（默认值）指定计算负载时只考虑出站数据流；参数 inbound 指定只考虑入站数据流；either 指定计算负载时，选择出站负载和入站负载中较大的那个。</p>
<h3 id="PPP 故障排查命令"><a name=6_10></a>PPP 故障排查命令</h3>
<p>debug ppp negotiation - 确定客户端是否可以通过 PPP 协商; 这是您检查地址协商的时候。<br>debug ppp authentication - 确定客户端是否可以通过验证。 如果您在使用 Cisco IOS 软件版本 11.2 之前的一个版本，请发出 debug ppp chap 命令。<br>debug ppp error - 显示和 PPP 连接协商与操作相关的协议错误以及统计错误。<br>debug aaa authentication - 要确定在使用哪个方法进行验证(应该是 RADIUS，除非 RADIUS 服务器发生故障)，以及用户是否通过验证。<br>debug aaa authorization - 要确定在使用哪个方法进行验证，并且用户是否通过验证。<br>debug aaa accounting - 查看发送的记录。<br>debug radius - 查看用户和服务器交换的属性。</p>
<div class=ujian-hook></div>
</div>
<footer class=article-footer>
<div class=bdsharebuttonbox>
<a href=# class=bds_tsina data-cmd=tsina title=分享到新浪微博></a>
<a href=# class=bds_qzone data-cmd=qzone title=分享到QQ空间></a>
<a href=# class=bds_tqq data-cmd=tqq title=分享到腾讯微博></a>
<a href=# class=bds_weixin data-cmd=weixin title=分享到微信></a>
<a href=# class=bds_tieba data-cmd=tieba title=分享到百度贴吧></a>
<a href=# class=bds_renren data-cmd=renren title=分享到人人网></a>
<a href=# class=bds_tqf data-cmd=tqf title=分享到腾讯朋友></a>
<a href=# class=bds_douban data-cmd=douban title=分享到豆瓣网></a>
<a href=# class=bds_tsohu data-cmd=tsohu title=分享到搜狐微博></a>
<a href=# class=bds_t163 data-cmd=t163 title=分享到网易微博></a>
<a href=# class=bds_taobao data-cmd=taobao title=分享到我的淘宝></a>
<a href=# class=bds_fx data-cmd=fx title=分享到飞信></a>
<a href=# class=bds_hi data-cmd=hi title=分享到百度空间></a>
<a href=# class=bds_more data-cmd=more></a>
</div>
<ul class=article-tag-list><li class=article-tag-list-item><a class=article-tag-list-link href=../tag/网络协议>网络协议</a></li><li class=article-tag-list-item><a class=article-tag-list-link href=../tag/计算机>计算机</a></li><li class=article-tag-list-item><a class=article-tag-list-link href=../tag/计算机网络>计算机网络</a></li></ul>
</footer>
</div>
<nav id=article-nav>
<a href="/webpage-color/" id=article-nav-newer class=article-nav-link-wrap>
<strong class=article-nav-caption>Newer</strong>
<div class=article-nav-title>
网页颜色代码表
</div>
</a>
<a href="/database-experiment-4/" id=article-nav-older class=article-nav-link-wrap>
<strong class=article-nav-caption>Older</strong>
<div class=article-nav-title>数据库实验 实验四 SQL命令</div>
</a>
</nav>
</article>
<section id=comments>
<div class=ds-thread data-thread-key="point-to-point-protocol/" data-title="PPP协议 点对点协议 配置安装" data-url="http://cweili.gitcafe.com/point-to-point-protocol/"></div>
</section>
</section>
<aside id=sidebar class=col-sm-3>
<div class="widget-wrap hidden-xs">
<h3 class=widget-title>分类</h3>
<div class=widget>
<ul class=category-list><li class=category-list-item><a class=category-list-link href=../category/学习笔记>学习笔记</a><span class=category-list-count>40</span></li><li class=category-list-item><a class=category-list-link href=../category/小生活>小生活</a><span class=category-list-count>27</span></li><li class=category-list-item><a class=category-list-link href=../category/杂物>杂物</a><span class=category-list-count>9</span></li></ul>
</div>
</div>
<div class=widget-wrap>
<h3 class=widget-title>最新评论</h3>
<div class=widget>
<div class=ds-recent-comments data-num-items=10 data-show-avatars=1 data-show-time=1 data-show-title=0 data-show-admin=1 data-excerpt-length=20>
<div class=text-center><i class="fa fa-refresh fa-spin"></i></div>
</div>
</div>
</div>
<div class=widget-wrap>
<h3 class=widget-title>最新文章</h3>
<div class=widget>
<ul>
<li>
<a href="/xixishidi/">河塘飞鸟西溪湿地</a>
</li>
<li>
<a href="/xizihu/">水光潋滟西子湖畔</a>
</li>
<li>
<a href="/xitang/">柳絮纷飞烟雨西塘</a>
</li>
<li>
<a href="/wuzhen/">灯火阑珊水映乌镇</a>
</li>
<li>
<a href="/stu3-zoo/">Stu3 Zoo</a>
</li>
<li>
<a href="/jshint-options/">JSHint配置参数详解</a>
</li>
<li>
<a href="/css3-jquery-rocket-to-top/">CSS3动画与jQuery实现返回顶部小火箭</a>
</li>
<li>
<a href="/rebuild-blog-gitcafe/">再一次重建我的博客</a>
</li>
<li>
<a href="/java-poi-excel/">Java使用POI创建Excel图表</a>
</li>
<li>
<a href="/hibernate-connect-sqlite-paging-bug-repair/">Hibernate 连接 SQLite (hibernate-sqlite) 分页bug的修复</a>
</li>
<li>
<a href="/web-page-color-chart/">更全的网页颜色表</a>
</li>
<li>
<a href="/quarrying-rocky-4/">20120407春游采石矶(四)</a>
</li>
<li>
<a href="/quarrying-rocky-3/">20120407春游采石矶(三)</a>
</li>
<li>
<a href="/quarrying-rocky-2/">20120407春游采石矶(二)</a>
</li>
<li>
<a href="/quarrying-rocky/">20120407春游采石矶(一)</a>
</li>
<li>
<a href="/ahpu-spring/">安徽工程大学的春天</a>
</li>
<li>
<a href="/helps-students-assembled-computer/">帮同学组装帅气小机箱电脑一台</a>
</li>
<li>
<a href="/nanjing-trip-4/">20120310南京二日行(四)</a>
</li>
<li>
<a href="/nanjing-trip-3/">20120310南京二日行(三)</a>
</li>
<li>
<a href="/nanjing-trip-2/">20120310南京二日行(二)</a>
</li>
</ul>
</div>
</div>
<div class="widget-wrap hidden-xs">
<h3 class=widget-title>手机阅读</h3>
<div class=widget>
<div class=qrcode style="background-image:url(http://qr.liantu.com/api.php?bg=eeeeee&fg=000000&el=l&w=192&m=0&text=http://cweili.gitcafe.com/point-to-point-protocol/)"></div>
</div>
</div>
<div class="widget-wrap hidden-xs">
<h3 class=widget-title>标签云</h3>
<div class="widget tagcloud">
<a href=../tag/acm style=font-size:10px>ACM</a><a href=../tag/c++ style=font-size:15.71px>C++</a><a href=../tag/css style=font-size:10px>CSS</a><a href=../tag/fedora style=font-size:15.71px>Fedora</a><a href=../tag/gnome style=font-size:11.43px>Gnome</a><a href=../tag/hibernate style=font-size:10px>Hibernate</a><a href=../tag/jshint style=font-size:10px>JSHint</a><a href=../tag/java style=font-size:11.43px>Java</a><a href=../tag/javascript style=font-size:12.86px>JavaScript</a><a href=../tag/linux style=font-size:17.14px>Linux</a><a href=../tag/pdo style=font-size:10px>PDO</a><a href=../tag/php style=font-size:12.86px>PHP</a><a href=../tag/poi style=font-size:10px>POI</a><a href=../tag/photoshop style=font-size:14.29px>Photoshop</a><a href=../tag/sae style=font-size:10px>SAE</a><a href=../tag/sql style=font-size:14.29px>SQL</a><a href=../tag/sqlite style=font-size:11.43px>SQLite</a><a href=../tag/stl style=font-size:11.43px>STL</a><a href=../tag/stu3 style=font-size:10px>Stu3</a><a href=../tag/twitter style=font-size:10px>Twitter</a><a href=../tag/virtualbox style=font-size:10px>VirtualBox</a><a href=../tag/jquery style=font-size:10px>jQuery</a><a href=../tag/三国杀 style=font-size:15.71px>三国杀</a><a href=../tag/乌镇 style=font-size:10px>乌镇</a><a href=../tag/互联网 style=font-size:10px>互联网</a><a href=../tag/动漫 style=font-size:11.43px>动漫</a><a href=../tag/动画 style=font-size:10px>动画</a><a href=../tag/南京 style=font-size:14.29px>南京</a><a href=../tag/博客 style=font-size:14.29px>博客</a><a href=../tag/实验 style=font-size:15.71px>实验</a><a href=../tag/容器 style=font-size:11.43px>容器</a><a href=../tag/小说 style=font-size:10px>小说</a><a href=../tag/微博 style=font-size:11.43px>微博</a><a href=../tag/心情 style=font-size:14.29px>心情</a><a href=../tag/摄影 style=font-size:17.14px>摄影</a><a href=../tag/操作系统 style=font-size:14.29px>操作系统</a><a href=../tag/数据库 style=font-size:18.57px>数据库</a><a href=../tag/旅行 style=font-size:20px>旅行</a><a href=../tag/日记 style=font-size:17.14px>日记</a><a href=../tag/杭州 style=font-size:11.43px>杭州</a>
</div>
</div>
<div class="widget-wrap hidden-xs">
<h3 class=widget-title>归档</h3>
<div class=widget>
<ul class=archive-list><li class=archive-list-item><a class=archive-list-link href=../archive/2014/09>September 2014</a><span class=archive-list-count>4</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2014/08>August 2014</a><span class=archive-list-count>4</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2012/09>September 2012</a><span class=archive-list-count>1</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2012/05>May 2012</a><span class=archive-list-count>2</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2012/04>April 2012</a><span class=archive-list-count>5</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2012/03>March 2012</a><span class=archive-list-count>5</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2011/12>December 2011</a><span class=archive-list-count>4</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2011/11>November 2011</a><span class=archive-list-count>18</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2011/10>October 2011</a><span class=archive-list-count>32</span></li><li class=archive-list-item><a class=archive-list-link href=../archive/2011/05>May 2011</a><span class=archive-list-count>2</span></li></ul>
</div>
</div>
<div class="widget-wrap hidden-xs">
<h3 class=widget-title>友情链接</h3>
<div class=widget>
<ul>
<li>
<a href=http://cweili.gitcafe.com target=_blank>主页</a>
</li>
</ul>
</div>
</div>
</aside>
</div>
<footer id=footer>
<div class=footer-wrap>
<div class=outer>
<div class=inner>
<div id=social-network>
<a class=link href=https://github.com/Cweili target=_blank><i class="fa fa-fw fa-github"></i></a>
<a class=link href=http://weibo.com/cweili target=_blank><i class="fa fa-fw fa-weibo"></i></a>
</div>
<div id=footer-info>
&copy; 2014 <a href=http://cweili.gitcafe.com target=_blank>Cweili</a><br>
Powered by <a href="http://hexo.io/" target=_blank>Hexo</a>.
Theme by <a href=http://cweili.gitcafe.com target=_blank>Cweili</a>.
</div>
</div>
</div>
</div>
</footer>
</div>
</div>
<div id=rocket-to-top>
<div class=onhover></div>
<div class=anim></div>
</div>
<link rel=stylesheet href=//libs.baidu.com/fontawesome/4.0.3/css/font-awesome.min.css css type=text/css>
<script src=//libs.baidu.com/jquery/1.11.1/jquery.min.js type=text/javascript></script><link rel=stylesheet href=//cdn.staticfile.org/fancybox/2.1.5/jquery.fancybox.min.css type=text/css>
<script src=//cdn.staticfile.org/fancybox/2.1.5/jquery.fancybox.min.js type=text/javascript></script><script src=../js/script.js type=text/javascript></script><script type=text/javascript>var duoshuoQuery={short_name:"cweiligitcafe"};</script><script src=//static.duoshuo.com/embed.js type=text/javascript></script><script type=text/javascript>var ujian_config={num:10,showType:3};</script><script src="http://v1.ujian.cc/code/ujian.js?uid=1539214&_=.js" type=text/javascript></script><script type=text/javascript>window._bd_share_config={common:{bdSnsKey:{},bdPopTitle:"分享到",bdMini:2,bdPopupOffsetLeft:28,bdPopupOffsetTop:108,bdMiniList:["sqq","mshare","bdysc","kaixin001","ibaidu","baidu","ff","qy","meilishuo","mogujie","diandian","ty","youdao","sdo"],bdPic:"",bdStyle:1,bdSize:"24"},share:{},image:{viewList:["tsina","qzone","tqq","weixin","tieba","renren","tqf","douban","tsohu","t163","taobao","fx","hi"],viewText:" ",viewSize:"24"},selectShare:{bdContainerClass:"article",bdSelectMiniList:["tsina","qzone","tqq","weixin","tieba","renren","tqf","douban","tsohu","t163","taobao","fx","hi"]}},document.write('<script type="text/javascript" src="http://bdimg.share.baidu.com/static/api/js/share.js?cdnversion='+~(-new Date/36e5)+'"><\/script>');</script><div id=stat-wrap>
<script src="http://s19.cnzz.com/stat.php?id=1252976445&web_id=1252976445" type=text/javascript></script></div></body></html>